package br.ucb.sigplan.action.impl;

import java.io.IOException;
import java.util.Calendar;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import br.ucb.sigplan.action.Action;
import br.ucb.sigplan.beans.Atividade;
import br.ucb.sigplan.beans.Calendario;
import br.ucb.sigplan.beans.Turma;
import br.ucb.sigplan.beans.service.BeansUtil;
import br.ucb.sigplan.crud.AtividadeCrud;
import br.ucb.sigplan.crud.CalendarioCrud;
import br.ucb.sigplan.crud.TurmaCrud;
import br.ucb.sigplan.util.DataUtil;

public class CadastraAtividadesAction implements Action {

	@Override
	public String execute(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		Turma turma = TurmaCrud.findTurmaById((Integer) req.getSession().getAttribute("turma"));
		List<Atividade> atividades = AtividadeCrud.searchByTurma(turma.getIdTurma());
		//if (atividades.isEmpty()) {	
			List<Calendario> dias = CalendarioCrud.findDatas('A');
			if (dias.isEmpty()) {
				req.setAttribute("msg", "inicioFimNaoCadastrado");
				req.removeAttribute("turma");
				return "/jsp/index.jsp";
			}
			List<Calendar> diasAulas = DataUtil.getAulas(turma.getDiasSemana(), dias.get(0).getData(), dias.get(1).getData());
			for (Calendar calendar : diasAulas) {
				System.out.println("Atividade dia : "+calendar.getTime());
			}
			BeansUtil.populateAtividades(diasAulas, atividades, turma.getIdTurma());
			AtividadeCrud.insertAll(atividades);
		//}
		return "abrirCadastraCronograma.do";
	}

}
